package com.androidcentralmedias;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.util.Log;
import java.util.ArrayList;


public class Controlador implements Runnable {
	
	static String texto=null;
	static Server server = new Server();
	public ArrayList<String> lista = new ArrayList<String>();
	public static String mensagem = new String();
	final Handler handler = new Handler();
	boolean array=false;
	long t0=0;
	int i=0;
	public void run() {
		new Thread(server).start();
		while(true){
			if (!server.fila.isEmpty()){
				mensagem=(String)server.fila.get(0);
				server.fila.remove(server.fila.get(0));
				Log.d("UDP","recebi");
				if (array==true){
					lerArray();
				}
				else{
					lerPacote();
				}
			}
		}
	}
	public void lerPacote(){
		if(mensagem.equals((String)"?lista")){
			array = true;
			Log.d("UDP","array=true");
		}
		else{
			Log.d("UDP","fdhasjgfdsgfdshgfhsdghhhdhdhdhdhddhdhdh");
			Message msg = new Message();
			Bundle b = new Bundle();
			b.putString("teste",mensagem);
			msg.setData(b);
			handler.sendMessage(msg);
		}
	}
	public void lerArray(){
		if(mensagem.equals((String)"?fim")){
			Message msg = new Message();
			Bundle b = new Bundle();
			Log.d("UDP","!FIM");
			b.putString("teste","!Fim");
			msg.setData(b);
			handler.sendMessage(msg);
			array=false;
			//enviarArray();
		}
		else{
		lista.add(server.fila.get(0));
		server.fila.remove(server.fila.get(0));		
		}
	}
	public void enviarArray(){
		Message msg = new Message();
		Bundle b = new Bundle();
		b.putStringArrayList("teste",lista);
		msg.setData(b);
		handler.sendMessage(msg);
	}
}